home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / util / boot / SystemPatch.lha / SystemPatch.readme < prev   
Text File  |  2000-10-24  |  5KB  |  150 lines

  1.  
  2. DESCRIPTION:
  3.  
  4.     SystemPatch replaces some functions of the operating system with optimized 
  5.     ones, increasing the system efficiency in multitasking environment.
  6.  
  7. REQUIREMENTS:
  8.  
  9.     OS3.0+ (should work too with OS2.x but i'm not sure).
  10.     CPU 68020 or 68030 (also works with higher processor but it's optimized
  11.     for these ones).
  12.     Some FAST RAM!!!
  13.  
  14. WHAT DOES IT DO:
  15.  
  16.     It patches these functions:
  17.  
  18.     in graphics.library
  19.         
  20.         DisownBlitter()
  21.         InitRastPort()
  22.         SetFont()
  23.         ClearEOL()
  24.         ClearScreen()
  25.         TextLength()
  26.         WaitTOF()
  27.         WaitBlit()
  28.         QBlit()
  29.         QBSBlit()
  30.         AreaMove()
  31.         EraseRect()
  32.  
  33.     in exec.library
  34.         
  35.         Forbid()
  36.         SetSignal()
  37.         Signal()
  38.         Wait()
  39.         Schedule()
  40.         Reschedule()
  41.         Exception()
  42.         ExitIntr()
  43.         Dispatch()
  44.         Cause()
  45.         PutMsg()
  46.         ReplyMsg()
  47.         Enqueue()
  48.         WaitPort()
  49.         RemPort()
  50.         Insert()
  51.         AddHead()
  52.         Remove()
  53.         RemHead()
  54.         RemTail()
  55.         SetExcept()
  56.         Switch()
  57.         InitSemaphore()
  58.         AddSemaphore()
  59.         AddPort()
  60.         RemResource()
  61.         RemSEmaphore()
  62.         ReleaseSemaphore()
  63.  
  64.     in layers.library
  65.  
  66.         DoHookClipRects()
  67.  
  68.     in utility.library
  69.  
  70.         SMult32()
  71.         UMult32()
  72.         SMult64()
  73.         UMult64()
  74.         SDivMod32()
  75.         UDivMod32()
  76.  
  77.     In SDivMod32() and UDivMod32(), i've introduced a check of operand that original
  78.     system functions do not make to avoid crashes due to divide by zero errors.
  79.  
  80.     It replaces Auto Vector Interrupts routines with faster ones.
  81.  
  82.     The patches do not interfere with other programs like:
  83.     FBlit, FText, SysPatch (best if you run SystemPatch after it), CMQ (and 
  84.     other CopyMem() patches), MCP, QBC, PatchWPA8, NewWPA8, BlazeWCP,
  85.     PoolMem, Executive.
  86.     NOTE: SystemPatch is optimized for 020 and 030 processors but you can
  87.     also use it if you have higher processor, these routines are even faster
  88.     than the originals.
  89.  
  90. INSTALLATION:
  91.  
  92.     From shell or from your user-startup just type the program name.
  93.     If you have not fast memory or not enough memory or inadeguate
  94.     processor it exits silently without installing anything.
  95.     If you have Executive is best to launch SystemPatch before it.
  96.  
  97. DISTRIBUTION:
  98.  
  99.     SystemPatch is FREEWARE. Use it at your own risk.
  100.  
  101. AUTHOR:
  102.  
  103.     If this program does not crash on your system or you think it is useful let 
  104.     me know about it. 
  105.     Write me! Congratulations and insults are welcome.
  106.  
  107.     E-mail: ziosante@libero.it
  108.  
  109. BUGS:
  110.  
  111.     I hope no one!
  112.     Tested on :
  113.         A1200 OS3.0 68020 8 Meg Fast Ram
  114.         A1200 OS3.0 Blizzard IV 16 Meg Fast Ram
  115.  
  116. HISTORY:
  117.     - 1.7b  New UDivMod32() and SDviMod32() patches: these make a control on
  118.             operands before taking division to avoid divide by zero errors.
  119.             This fixes problems with programs that call that functions with
  120.             wrong arguments(causing divide by zero errors).
  121.     - 1.7   Removed Interrupts Vector patches because of a bug with mfm decoding of
  122.             trackdisk.
  123.     - 1.6f  General speedup to interrupt vectors and auto vector interrupts.
  124.     - 1.6e  Corrected a bug in SOFTINT. Little speedup to BLIT.
  125.     - 1.6d  Reworked code for a better use of caches.
  126.     - 1.6c  Little speedup to InitRastPort().
  127.     - 1.6   Added AreaMove(), EraseRect(), ReleaseSemaphore().
  128.             Added Interrupt Vectors patches (see patches list in this doc).
  129.     - 1.5g  Added InitSemaphore(), AddSemaphore(), AddPort(), RemResource(),
  130.             RemSemaphore().
  131.             Little speedup to Switch() and DoHookClipRects().
  132.     - 1.5f  Little speedup to DoHookClipRects(). Changed the installation code.
  133.     - 1.5e  Nothing changed except the source. Now uses CopyMemQuick() to install
  134.             the patches.
  135.     - 1.5d  Added DoHookClipRects() patch.
  136.     - 1.5c  Readded Switch(), now works perfectly. If Executive is launched this
  137.             patch is not installed.
  138.     - 1.5b  Speeded up Auto Vector Interrupts.
  139.     - 1.5a  New Wait(). Some misc speedups. Aestetical changes to source.
  140.     - 1.5   Restored old WaitBlit() patch (version 1.2 of SystemPatch) for
  141.             safety reasons. Added utility.library patches.
  142.             Reworked source. New Wait().
  143.     - 1.4   Removed a bug in QBlit() patch. Added QBSBlit() patch.
  144.     - 1.3   Changed WaitBlit() patch (it's a little faster to return if
  145.             blitter is not busy). Added a QBlit() patch.
  146.     - 1.2   First public release. Reworked patch installation code to do it more
  147.             compatible with Executive (this is done by removing Switch() patch).
  148.     - 1.1   Fixed a bug in Schedule() that made to crash my system sometimes.
  149.     - 1.0   First internal release.
  150.